#include<stdio.h>  
#include<string.h>  

int main() {  
   char s[100][80];  
   int i, j, n;  

   scanf("%d", &n); // 读入单词个数n  

   for (i = 0; i < n; i++) // 读入n个单词到数组中  
       scanf("%s", s[i]);  

   // 冒泡排序对字符串数组进行排序  
   for (i = 0; i < n - 1; i++) {  
       for (j = 0; j < n - 1 - i; j++) {  
           if (strcmp(s[j], s[j + 1]) > 0) {  
               char temp[80];  
               strcpy(temp, s[j]);  
               strcpy(s[j], s[j + 1]);  
               strcpy(s[j + 1], temp);  
           }  
       }  
   }  

   for (i = 0; i < n; i++) // 输出排序后所有单词  
       puts(s[i]);  

   return 0;  
}
